import java.util.ArrayList;
import java.util.List;


public class Games {
	public static void main(String[] args) {
		List<String> list = new ArrayList<String>();
		for(int i=1;i<=63;i++){
			list.add(String.valueOf(i));
		}
		System.out.println(DeletePlayers(list));
	}
	/**
	 * 如果 2^a<= N <=2^(a+1)那么剩下的最后一个人是2^a
	 * @param players 每次剩下来的人
	 * @return
	 */
	public static String DeletePlayers(List<String> players){
			String last = null;
			List<String> arr = new ArrayList<String>();
			//去除1、3、5、7.....
			for(int i=0;i<players.size();i++){
				//如果index为偶数那么，留下来
				if((i+1)%2!=1){
					arr.add(players.get(i));
				}
			}
			//如果list里只有一个了，那么说明就是最后留下的那个人了
			if(arr.size()==1){
				last = arr.get(0);
			}else{
				DeletePlayers(arr);
			}
		System.out.println(last);
		return last;
	} 
}
